package models

import (
	"time"

	"github.com/jinzhu/gorm"
)

// Post 博文模型
type Post struct {
	gorm.Model
	UserID        uint      `gorm:"not null" json:"user_id"` // 外键，指向用户表
	Title         string    `gorm:"not null" json:"title"`
	Content       string    `gorm:"type:text" json:"content"`
	CategoryID    uint      `gorm:"" json:"category_id"`        // 外键，指向分类表 (可选)
	Tags          string    `gorm:"" json:"tags"`               // 逗号分隔的标签
	AttachmentURL string    `gorm:"" json:"attachment_url"`     // 封面图片路径或 URL
	Views         uint      `gorm:"default:0" json:"views"`     // 浏览量
	Likes         uint      `gorm:"default:0" json:"likes"`     // 点赞数
	Favorites     uint      `gorm:"default:0" json:"favorites"` // 收藏数
	CreatedAt     time.Time `json:"created_at"`
	UpdatedAt     time.Time `json:"updated_at"`
}

// TableName 定义数据库表名
func (Post) TableName() string {
	return "posts"
}
